Systems, methods, and machine-readable storage media for presenting animations overlying multimedia files

ABSTRACT

Provided are systems, methods, and machine-readable storage media for presenting animations overlying multimedia files in accordance with the present disclosure. Embodiments are described for linking an animation to a multimedia file and presenting the animation overlying a concurrent playback of the multimedia file (e.g., its content). Embodiments are described for including additional elements to the presentation of the animation outside of the playback of the animation, including residual elements that relate to the content of the animation and/or allow a user to receive further information about the content of the animation. Embodiments are described for linking an animation to more than one multimedia file.

RELATED APPLICATIONS

This application claims the benefit of and is a continuation of U.S.patent application Ser. No. 14/736,121, filed on Jun. 10, 2015, now U.S.Pat. No. 10,445,918, issued on Oct. 15, 2019, which is a continuation ofU.S. patent application Ser. No. 12/859,215, filed on Aug. 18, 2010, nowU.S. Pat. No. 9,071,885, issued on Jun. 30, 2015, which is incorporatedby reference in its entirety.

FIELD OF THE TECHNOLOGY

At least some embodiments of this disclosure relate to animations andmultimedia files, and more particularly but not limited to, presentinganimations overlying a concurrent playing of the multimedia file.

BACKGROUND

Advertisement systems may include several ways of associating particularadvertisements with other presentations, such as presentations ofmultimedia files. For example, content in multimedia files may suggest aparticular demographic of those likely to watch the presentation of thecontent, and thereby suggest a particular advertisement.

SUMMARY OF THE DESCRIPTION

Systems, methods and machine-readable storage media for presentinganimations overlying multimedia files in accordance with the presentdisclosure are described herein. Some embodiments are summarized in thissection.

In one embodiment, the disclosure describes a method, which may beimplemented on a computer, whereby the method includes selecting a firsttrigger related to a multimedia file and a first time code related tothe first trigger, preparing an instruction to play an animationoverlying the multimedia file beginning from a first placement point andat the first time code, and transmitting the instruction to a multimediaplayer configured to play the multimedia file.

In another embodiment, the disclosure describes a method, which may beimplemented on a computer, whereby the method includes receiving contentinformation relating to a multimedia file, the content informationincluding a plurality of placement points and a plurality of time codes,each placement point containing at least two spatial coordinates,wherein the plurality of placement points comprises a first placementpoint, and the plurality of time codes comprises a first time code. Themethod further includes transmitting an instruction to a multimediaplayer to initiate playing, beginning at the first time code and locatedat the first placement point, of a multi-dimensionally linked animation(MLA) on a visual layer overlaying the multimedia file, wherein theinstruction includes the first placement point and the first time code.

In another embodiment, the disclosure describes a method, which may beimplemented on a computer, whereby the method includes presenting anadvertisement selection interface including a representation of aplurality of multimedia files and a selected common selection criterionrelated to each of the plurality of multimedia files. The method furtherincludes presenting an indication of a placement point and a time codeof a multimedia file, the multimedia file included in the plurality ofmultimedia files. The method further includes receiving a selection ofthe placement point and the time code in the first multimedia file, andpreparing an instruction for a multimedia player to link a playing ofthe animation with a concurrent playing of the first multimedia file atthe first placement point and the first time code.

In another embodiment, the disclosure describes a method, which may beimplemented on a computer, whereby the method includes presenting, via amultimedia player, a multimedia file, determining that a content item ispresented as part of the multimedia file and, in response to thedetermining, presenting, via the multimedia player, an animationoverlying the multimedia file, wherein the presenting the animation iscoordinated to begin when the content item is presented.

Other embodiments and features of the present disclosure will beapparent from the accompanying drawings and from the detaileddescription that follows.

BRIEF DESCRIPTION OF THE DRAWINGS

The embodiments are illustrated by way of example and not limitation inthe figures of the accompanying drawings in which like referencesindicate similar elements.

FIG. 1 shows an embodiment of a multimedia player interface duringplayback of an exemplary multimedia file.

FIG. 2 shows an embodiment of a multimedia player interface duringplayback of an exemplary multimedia file with a concurrent playing of ananimation overlying the multimedia file.

FIG. 3 shows an embodiment of a multimedia player interface duringplayback of an exemplary multimedia file, also showing a residual imageof an animation and associated content displayed in portions of themultimedia player interface.

FIG. 4 illustrates an embodiment of a method of playing an animationover a concurrent playing of a multimedia file.

FIG. 5 illustrates an embodiment of a method for transmitting a linkedadvertisement for playing with a concurrent playing of a multimediafile.

FIG. 6 illustrates an embodiment of a method of presenting anadvertisement selection interface.

FIG. 7 is a schematic representation of an embodiment of a system forlinking animations and multimedia files.

DETAILED DESCRIPTION

The following description and drawings are illustrative and are not tobe construed as limiting. Numerous specific details are described toprovide a thorough understanding. However, in certain instances,well-known or conventional details are not described in order to avoidobscuring the description. References to one or an embodiment in thepresent disclosure are not necessarily references to the sameembodiment; and, such references mean at least one.

Provided are systems, methods, and machine-readable storage media forpresenting animations overlying multimedia files in accordance with thepresent disclosure. Embodiments are described for linking an animationto a multimedia file and presenting the animation overlying a concurrentplayback of the multimedia file (e.g., its content). Embodiments aredescribed for including additional elements to the presentation of theanimation outside of the playback of the animation, including residualelements that relate to the content of the animation and/or allow a userto receive further information about the content of the animation.Embodiments are described for linking an animation to more than onemultimedia file.

As described further herein, an animation may be linked to a multimediafile such that the animation is not part of the multimedia file but ispresented when certain events (e.g., triggering events) occur during theplayback of the multimedia file. For example, the animation may appearover the presentation of the multimedia file. As described furtherherein, certain events may occur at certain time codes of the multimediafile that trigger playback of the animation, such as words spoken in anaudio track of the multimedia file or the appearance of a particularitem in a video portion of the multimedia file. As described furtherherein, the words spoken in an audio track (e.g., of an audio portion)of the multimedia file may be accessed by systems or processes hereinthrough using a transcript of the audio track, which may be associatedwith the multimedia file automatically and/or manually. For example, anautomatic transcription of the audio track (e.g., machine transcription)may be coupled with manually-added descriptions of events within thecontents of the multimedia file. As described further herein, synonyms,and/or subjectively-determined or objectively-determined related wordsmay be automatically included into a transcript of a multimedia file orother group of words associated with the multimedia file. As describedfurther herein, each of the words associated with a multimedia file maybe used to link an animation to the multimedia file.

In some embodiments, the animations described further herein may bepresented in a non-intrusive manner over the multimedia file and maylast for a limited portion of time (e.g., compared to the playback ofthe multimedia file). For example, the animation lasts for a shortperiod of time, such as 1-10 seconds (e.g., 3 seconds). As describedfurther herein, the multimedia player may be instructed to presentadditional elements related to the animation after the animation hascompleted. Also as described further herein, additional elements may bepresented related to the animation that allow actions to be performed,such as receiving further information about an advertised product orservice included in the animation. For example, the animation may be aproduct advertisement.

As used herein, the term “animation” may refer to any combination orsingle type of images, sequences of images, classic animation (e.g.,hand-drawn, computer animated), and/or video, both with and withoutaudio components or tracks. A multimedia file may similarly have one ormore animation(s) under this definition. Any distinction betweenanimations and multimedia files in this description is only made inorder to maintain a frame of reference as to the underlying playback ofthe multimedia file with the linked, overlying playback of theanimation.

FIG. 1 shows an embodiment of a multimedia player interface 100 duringplayback of an exemplary multimedia file. The multimedia playerinterface 100 includes a multimedia file playback portion 102 thatdisplays the contents of the multimedia file during playback. Themultimedia player interface 100 includes exemplary playback controls106, such as playback selection controls, volume controls and timescroll interface. The multimedia player interface also includes a timebar 108 that indicates the position of playback with respect to thetotal playback length of the multimedia file being played. In oneembodiment, a cursor 114 (e.g., representing the position of a mouse)may be used to select the playback controls 106 and manipulate thefunctions of the multimedia player interface 100, such as duringplayback of a multimedia file.

In one embodiment, the multimedia player interface 100 includes a shellportion 104 in addition to a showcase portion 110 and extended paletteportion 112, and each portion is positioned outside the multimediaplayback portion 102. The shell portion 104 may contain design elements(e.g., branding elements) such as logos or other images. In oneembodiment, the shell portion 104 displays a static image for a periodof time before shifting to another static image.

In one embodiment, as described further herein, the showcase portion 110contains residual image(s) (e.g., representative image(s)) ofadvertisements placed over the concurrent playback of a multimedia file.Also as described further herein, in one embodiment, the extendedpalette portion 112 contains fulfillment information and/or fulfillmentlinks related to animations placed over the concurrent playback of amultimedia file.

In one embodiment, a multimedia player may be operated by a machineand/or processor that presents the multimedia player interface 100. Inanother embodiment, a multimedia player may be operated by a machineand/or machine separate from the machine that presents the multimediaplayer interface 100. For example, as described further herein, amachine may operate a multimedia player and transmit data containing thepresentation of a multimedia file and/or an animation to a secondmachine that presents the multimedia player interface 100 within whichthe playback of the multimedia file and/or the animation is presented.

FIG. 2 shows an embodiment of a multimedia player interface 200 duringplayback of an exemplary multimedia file with a concurrent playing of ananimation overlying the multimedia file. In one embodiment, themultimedia player interface contains the multimedia playback portion 102in which the content of a multimedia file is presented (e.g., aninstructional video about hair styling). The time bar 108 indicates asequence of time codes 108 a-108 f of the multimedia file, which areillustrated as portions of the time bar. The time scroll interface 106indicates a present position of the playback with respect to those timecodes. Time codes of a multimedia file relate to the chronological orderof content that is displayed when a multimedia file is played back.There are multiple ways in which time codes may be represented, forexample, by multimedia players and technologies for interfacing withmultimedia players. As described further herein, time codes may beassigned using technologies adapted to work with the multimedia playerand/or using native features of recording and/or editing equipment thatprocesses the multimedia file.

As described further herein, in one embodiment, a multimedia file'splacement points and time codes may be used to link an animation to themultimedia file and the placement points and time codes may be referredto as corresponding to the animation, for example, through the linkingof that animation to the multimedia file. For example, a multimediafile's placement points and time codes may be referenced with respect toan animation in order to describe where, and when an animation is linkedto the multimedia file. As another example, a multimedia file'splacement points and time codes may be referenced with respect to ananimation in order to describe how an animation is linked to themultimedia file.

In one embodiment, an animation is linked to a multimedia file withoutthe use of a placement point and/or time code. For example, an animationmay be linked to an multimedia file through a word or content item, asdescribed further herein, using a machine transcription or otherautomatic content recognition technology that identifies a word orcontent item in the multimedia file and triggers playback of theanimation based on that identification. In one embodiment, an automaticrecognition technology (e.g., machine transcription) monitors theplayback of a multimedia file, performs a recognition function inreal-time or near real-time during the playback, and producesindications of recognized content for use along with instructions thatlink an animation to certain content. For example, a multimedia playermay play a multimedia file, content may be automatically recognized(e.g., audio portion transcribed, synonyms matched), and the multimediaplayer may present an animation based on the content. In anotherembodiment, a human operator may create a transcription of an audiotrack of the multimedia file.

Various images of an animation overlying the concurrent playback of themultimedia file in the multimedia player interface may be made to appearat several exemplary placement points 202, 204, 206, and 208 of themultimedia file. As described further herein, the animation may presentimages in the animation overlying the multimedia file at specificlocations of the multimedia playback portion 102 of the multimediaplayer interface 200. The exemplary placement points 202, 204, 206, and208 may correspond with particular exemplary time codes 108 a-108 f ofthe underlying multimedia file.

In one embodiment, while the multimedia file is being played back, ananimation is first presented to a user at a beginning time code 108 a,for example, of a video multimedia file then playing and from abeginning placement point 202 (e.g., a location within the video imagebeing presented to a user), for example, based on a triggering event asdescribed further herein. For example, the animation shown at beginningplacement point 202 has a beginning image of a bottle of hair product(e.g., styling mousse). The animation then passes through intermediatetime codes 108 b as the image of the bottle moves and expands across themultimedia file playback portion 102 at intermediate placement points204 (indicated as arrows showing an exemplary outline of the imageplaced at the intermediate placement points).

In one embodiment, an animation presented over the multimedia playbackportion 102 may reach a featured time code 108 c corresponding with aselected intermediate image of the animation placed at featuredplacement point 206. In one embodiment, the animation may hold theselected intermediate image at the featured placement point 206 for apredetermined time between time codes 108 c and 108 d. For example, thepredetermined time is a time selected and predetermined for users of themultimedia player interface 200 to view the selected intermediate imageof the animation (e.g., hair product) at the featured placement point206.

In one embodiment, the animation may move from the featured placementpoint 206 through a second set of intermediate placement points 208,while the animation transitions from the selected intermediate image toa residual image 210 located in the showcase portion 110 of themultimedia player interface 200. For example, the second set ofintermediate placement points 208 may be a set of placement points for atransition of the animation from the featured placement point to ashowcase, namely a set of “showcase transition” placement points. Thesecond set of intermediate placement points 208 for the animation (e.g.,showcase transition placement points) correspond to a second set ofintermediate time codes 108 e (e.g., showcase transition time codes). Inone embodiment, an image of the animation appears to a user to fitintegrally within the playback of the multimedia file. In anotherembodiment, an image of the animation appears to a user not to fitintegrally within the playback of the multimedia file. In anotherembodiment, a first image of the animation may appear to fit integrallyand a second image may appear not to fit integrally. For example, theapparent effect to a user may be that a bottle appears to be includedwithin the scene of the multimedia file (e.g., a bottle on acountertop), and then the bottle appears to fly forward in front of themultimedia file playback, leaving the scene (e.g., expands in size,changes perspective view to move toward the user). As another example,the apparent effect to a user may be that the object moves (e.g., isanimated) relative to the scene of the multimedia file, for example, ina way that fits integrally in a scene of a multimedia file (e.g.,choreographed movement) or in a way that does not fit integrally (e.g.,contrasting movement). In one embodiment, as described further herein,images of the animation may move across the multimedia playback portionand come to a rest within the showcase portion.

In one embodiment, the second set of intermediate placement points 208corresponds to a sequence of images of the animation. In one embodiment,the placement points 208 lead in a line between the featured placementpoint 206 and a residual image 210 located in the showcase portion 110.In another embodiment, the second set of intermediate placement points208 lead elsewhere in the multimedia file playback portion 102. In oneembodiment, the second set of intermediate placement points (e.g.,showcase transition placement points) end near a showcase portion 110 ofthe multimedia player interface 100 and/or a residual image 210.

In one embodiment, the animation has an ending time code 108 fcorresponding to the animation ceasing to be presented in the multimediafile playback portion 102. For example, the ending time code 108 f maycorrespond to a final image of the animation's sequence of images.

In one embodiment, placement points 202, 204, 206, and 208 are arrangedwith corresponding time codes 108 a-108 f to make the animation'ssequence of images appear to move across the multimedia filepresentation portion 102 of the multimedia player interface 300. Forexample, the placement points 202, 204, 206, and 208 may be separated orotherwise arranged to make the images appear to move across a screenwith the passage of time. In another embodiment, one or more ofplacement points 202, 204, 206, and 208 may be at the same location. Forexample, placement points 202, 204, 206, and 208 may refer to the samelocation or otherwise be arranged such that one or more images of theanimation may appear to remain at a stationary location in themultimedia file presentation portion 102.

In one embodiment, placement points 202, 204, 206, and 208 are arrangedwith corresponding time codes 108 a-108 f to make the animation'ssequence of images appear continuous (e.g., smooth) during playback. Forexample, an animation's sequence of images may appear to stop or reversedirections during play. In another embodiment, the arrangement ofplacement points 202, 204, 206, and 208 with corresponding time codes108 a-108 f may make the animation's sequence of images appear to bediscontinuous. For example, a set of intermediate placement points mayinclude placement points that are so separated on the multimediaplayback portion 102 that, because the placement points havingrespectively corresponding to adjacent time codes, the animation'ssequence of images has images that appear to “jump” from one placementpoint to another.

In one embodiment, each of the time codes 108 a-108 f is positioned in amiddle portion of the multimedia file. In another embodiment, one ormore of the time codes 108 a-108 f may include a beginning and/or endingtime code of the multimedia file. In one embodiment, the order describedherein of time codes 108 a-108 f is used by the animation withcorresponding placement points and images. In another embodiment, theanimation may use a different order of time codes with correspondingplacement points and images.

In one embodiment, the animation is a multi-dimensionally linkedanimation (MLA). As described further herein, an MLA is linked to theplayback of a multimedia file through a placement point (e.g., denotinga two-dimensional or three-dimensional point on the multimedia fileplayback portion 102) and through a corresponding time code, therebylinking the animation to the multimedia media file. The linking betweenthe MLA and the multimedia file may be accomplished through multipletechniques, some of which are also as described further herein. Inaddition, as described further herein, the placement points and timecodes linking an MLA to a particular multimedia file may be determinedby several methods.

In one embodiment, the MLA is designed to cover only a portion of themultimedia playback portion 102. In another embodiment, the MLA coversthe entire multimedia playback portion 102. The MLA may be designed withany combination or level of opacity and/or transparency. The MLA mayinclude a beginning animation of any size, such as, for example, animage scaled to appear as if it belongs in a scene of the multimediafile (e.g., same size as similar objects in the scene), or an imagescaled to appear much larger (e.g., disproportionate to the scene, or“in front of” the scene).

In one embodiment, the MLA may be played by the multimedia player andlinking instructions may be performed by the multimedia player to playthe MLA beginning at a particular time code 108 a and originating from aparticular placement point 202 on the multimedia file playback portion102. In one embodiment, the MLA may contain linking instructions. Inanother embodiment, linking instructions may be separately stored by themultimedia player and/or separately transmitted to the MLA. In oneembodiment, the linking instructions may include instructions to performcertain specified actions corresponding with certain specifiedtriggering events (e.g., time codes 108 a-108 f) with instructions tolet the animation play freely between the specified time codes. Inanother embodiment, the linking instructions may include a specifiedaction for each time code 108 a-108 f spanned by the MLA.

In one embodiment, the linking instructions may contain instructions foractions to be performed at time codes outside of the time codes spannedin the MLA. For example, the linking instructions may includeinstructions to place a residual image 210 in a showcase portion 110 ofthe multimedia player interface 200 at a time code not contained between108 a-108 f.

In one embodiment, the linking instructions may contain instructions toperform certain actions based on triggering events includinginteractions with the cursor 114. For example, as described furtherherein, a cursor selection of the residual image 210 may causefulfillment instructions to be executed, including, for example, thedisplay of fulfillment information and/or fulfillment link(s). Inanother embodiment, other instructions may be transmitted to themultimedia player or may be received by the multimedia player relatingto responding to selections by the cursor 114.

In one embodiment, the multimedia player will respond differently withrespect to presenting the MLA when a certain time code is reacheddepending on whether that time code is reached via normal playback ormanipulated past the time code using playback controls (e.g., to “fastforward”, to skip sections, to scroll, etc.). For example, a multimediaplayer may present an MLA when a beginning time code 108 a is reachedthrough normal playback of a multimedia file, but will not present theMLA when the beginning time code is reached through scrolling using thetime scroll interface 106. As another example, a multimedia player maypresent an MLA when a beginning time code is reached in a forwarddirection, regardless of how that beginning time code is reached, butwill not present the MLA when an ending time code 108 f is reached in areverse direction (e.g., encountering time codes in reversechronological order). As another example, a multimedia player maypresent an MLA when a time code is reached in response only to a firstinstance where the time code is reached after the multimedia file hasbeen loaded for playback, but not in response to additional instanceswhere the time code is reached.

In another embodiment, the multimedia player will respond similarly withrespect to presenting the MLA regardless of how a time code is reached.For example, a multimedia player may present a residual image when anending time code 108 f is reached regardless of how that ending timecode is reached. As another example, a multimedia player may present theMLA over the multimedia file when the corresponding time codes arereached regardless of whether the time codes are encountered via normalplayback or scrolled forward and/or backward using the time scrollinterface 106.

In one embodiment, as described further herein, the MLA is presented bythe multimedia player in a visual layer overlying the multimedia fileplayback portion 102. The MLA may be opaque or have any degree oftransparency with respect to the underlying playback of the multimediafile. The MLA may appear to “float” over the playback of the multimediafile and/or may appear to be integrated with the multimedia file,depending on the design of the MLA with respect to the multimedia file.For example, elements of MLA may be sized and/or placed over portions ofthe playback of the multimedia file (e.g., product on a shelf) such thatthe elements of the MLA may appear to be part of the playback of themultimedia file. Further details about the design of the MLA and itslinking to a multimedia file are described further herein.

FIG. 3 shows an embodiment of a multimedia player interface 300 duringplayback of an exemplary multimedia file, also showing a residual imageof an animation and associated content displayed in portions of themultimedia player interface. The showcase portion 110 of the multimediaplayer interface 300 contains residual image 210, and may contain otherresidual images 302 and 308. The showcase portion 110 may have ascrolling function 310 allowing residual image 308 to be scrolled out ofthe showcase portion (e.g., to add a new residual image 210 at the topof a list) and scrolled into the showcase portion after it has beenmoved out.

In one embodiment, the showcase portion 110 may be automatically managedwith respect to the residual images 210, 302, 308 presented therein bythe multimedia player based on the playback of the multimedia file andMLA. For example, instructions may be sent to a multimedia player todisplay a residual image 210 for a specified period of time beforeremoving it. As another example, a residual image 210 may be displayeddifferently depending on the manner in which time codes related to theresidual image were encountered by the multimedia player. In anotherembodiment, the showcase portion 110 may respond to user input, such asfrom a cursor 114. For example, a user may scroll the showcase portion110 using the scroll interface 310 to view different residual images210, 302, 308.

In one embodiment, the extended palette portion 112 presents fulfillmentinformation 304 a related to residual image 210. Fulfillment information304 a may include, for example, information about a product shown in theresidual image 210. In one embodiment, a fulfillment link 306 a relatedto residual image 210 may be presented in the extended palette portion112. The fulfillment link 306 a may include embedded instructions, forexample, for a multimedia player, browser or other program to follow ahyperlink, to purchase a product, to send a message, and/or to connectto a network.

In one embodiment, the extended palette portion 112 of the multimediaplayer interface 300 may present fulfillment information 304 a and/orfulfillment link 306 a based on a selection of the residual image 210,for example, via selection using the cursor 114, whether by overtselection and/or through placing the cursor over the residual image. Inanother embodiment, the extended palette portion 112 may presentfulfillment information 304 a and/or fulfillment link 306 a based oninstructions, such as delaying presentation until a selected time afterpresenting the residual image 210. In one embodiment, the fulfillmentinformation 304 a and the fulfillment link 306 a is presented togetherin the multimedia player interface 300 based on the same criteria ortriggering events. For example, a triggering event such as a selectionof the residual image by the cursor 114 or the passage of apredetermined time may cause both the fulfillment information 304 a andthe fulfillment link 306 a to be presented. In one embodiment, a cursor114 placed over the residual image 210 causes fulfillment information304 a to be presented, while overt selection (e.g., mouse click) of theresidual image causes a fulfillment link to be followed (e.g., thefulfillment link 304 may be imbedded within the residual image 210). Inanother embodiment, the fulfillment information 304 a and fulfillmentlink 306 a are presented by the multimedia player based the samecriteria or triggering events. For example, a selection of a residualimage 210 may cause the presentation of fulfillment information 304 aand a further triggering event (e.g., a selection of that fulfillmentinformation or a passage of a predetermined time) must occur before thefulfillment link 306 a is presented.

In one embodiment, other fulfillment information 304 b and/or anotherfulfillment link 306 b relating to another residual image 302 may bepresented in the extended palette portion 112. In one embodiment,fulfillment information 304 a and/or fulfillment link 306 a may bepresented at the same time as other fulfillment information 304 b and/oranother fulfillment link 306 b. In another embodiment, the multimediaplayer may only present fulfillment information and/or a fulfillmentlink related to one residual image at a time. For example, a triggeringevent that causes fulfillment information 304 a and/or fulfillment link306 a to be displayed may cause other presently-displayed fulfillmentinformation 304 b and/or another presently-displayed fulfillment link306 b to be removed from the extended palette portion 112.

In one embodiment, triggering events described further herein that maydetermine whether an MLA is presented and/or whether a related-residualimage is presented may be used to determine whether fulfillmentinformation is presented and/or whether a fulfillment link is presented.For example, the circumstances surrounding how a time code (e.g., timecode 108 a) is encountered may determine whether or how fulfillmentinformation and/or a fulfillment link is presented.

FIG. 4 illustrates an embodiment of a method 400 of playing an animationover a concurrent playing of a multimedia file. The process includesselecting a first trigger in step 402, for example, a word that relatesto an advertisement goal. In one embodiment, the first trigger selectedin step 402 occurs in a multimedia file, such as, for example, a word ina transcript of the multimedia file, an image appearing in themultimedia file, and/or a description of the context of the multimediafile. For example, the contents of the multimedia file may have a firstword or a related context that relates to or suggests the first trigger.As another example, the first trigger may be a synonym or a related wordto a word in the audio track or description of the contents of themultimedia file.

In another embodiment, the first trigger selected in step 402 is a wordthat relates to a focus of an advertisement campaign. For example,selecting a first trigger in step 402 may be performed to achievecertain advertising purposes before a related multimedia file isselected for linking with an animation.

The process 400 includes preparing an animation in step 404 from thefirst trigger. In one embodiment, as described further herein, theanimation may be a multi-dimensionally linked animation (MLA). Asdescribed further herein, the animation may be prepared in step 404before or after a multimedia file is selected for linking with theanimation. In one embodiment, a particular placement point and time codemay be determined from a multimedia file and the animation may beprepared in step 404 specifically contemplating linking the animationwith that placement point and time code. In another embodiment, aplacement point and time code may be determined for a multimedia fileafter an animation is prepared in step 404.

The process 400 includes instructing a multimedia player to play theanimation over a concurrent playing of a multimedia file in step 406. Asfurther described herein, the multimedia player may be instructed instep 406 to play (e.g., present, display) the animation in a visuallayer overlying a multimedia file playback portion of the multimediaplayer. As further described herein, the playback of a multimedia filemay affect how an MLA is presented or played. In step 406, theinstructions for the multimedia player may include instructions for howplayback of a multimedia file and presentation of the MLA are linked.For example, a multimedia player may be instructed in step 406 topresent an MLA and/or residual images only when a specified time code isreached during normal playback of a multimedia file.

Instructing the multimedia player to play the animation over aconcurrent playback of a multimedia file in step 406 may be performedthrough instructions formatted to be interpreted by varioustechnologies. For example, instructions may be sent to machinesoperating or capable of interpreting instructions for technologies suchas Java, HTML5, Flash, or Silverlight. For example, instructions may beincluded in an action script for presentation by a Flash program. Themultimedia player may integrate with one of the technologies to variousextents. In one embodiment, the instructions may be adapted to beinterpreted by a native functionality of the multimedia player. Inanother embodiment, the instructions may be adapted to be interpreted bya technology adapted to work with the multimedia player (e.g., Internetbrowser, plug-in).

Instructions in step 406 may be to present or display the MLA on a layerseparate from the layer on which the multimedia file is presented. Forexample, a multimedia player or a technology working with the multimediaplayer may include an additional layer on which the animation may bepresented overlying a concurrent playback of the multimedia file, asdescribed further herein.

The process 400 includes instructing a multimedia player to presentadditional elements associated with the animation in step 408. Asdescribed further herein, the additional elements may include residualimage(s), fulfillment information and/or fulfillment link(s). In oneembodiment, step 408 is performed separately from instructing themultimedia player to play an animation in step 406. In anotherembodiment, step 408 is performed at the same time or through the sameinstructions as step 406. For example, an MLA may be transmitted to themultimedia player with instructions for playing the animation over aconcurrent playback of the multimedia file and for presenting additionalelements associated with the animation.

The process 400 includes receiving a selection of a residual image instep 410 and receiving a selection of a fulfillment link. Steps 410 and412 are shown in broken lines as optional steps in the process 400, asdescribed further herein with respect to receiving selections of variouselements (e.g., through a cursor) and actions triggered thereby. In oneembodiment, selections are received to trigger certain actions, asdescribed further herein. In another embodiment, actions are performedbased on instructions without first receiving a selection, as describedfurther herein.

In one embodiment, a selection of a residual image is received in step410 and/or a selection of a fulfillment link is received in step 412 byan apparatus performing the process 400. In another embodiment, aselection of a residual image and/or fulfillment link are received insteps 410 and 412 by another apparatus. For example, the process 400 maybe performed by a computing machine located remotely from the multimediaplayer, and the multimedia player (or machine operating the multimediaplayer) may receive a selection and perform an action. As anotherexample, as described further herein, the action(s) may be based on someother criteria (e.g., passage of a predetermined period of time, delay),as described further herein.

The process 400 includes the optional step 414 of instructing themultimedia player to connect to a network. As described further herein,the step 414 may be performed by another apparatus and/or may beperformed based on instructions sent at a different time and triggeredbased on some event occurring on another apparatus. In one embodiment,step 414 includes instructing the multimedia player to followfulfillment link instructions as selected (e.g., by a cursor) or astriggered (e.g., by a passage of time). In another embodiment, step 414includes instructing the multimedia player to retrieve fulfillmentinformation from a network.

FIG. 5 illustrates an embodiment of a method 500 for transmitting alinked advertisement for playing with a concurrent playing of amultimedia file. The process 500 includes receiving information relatingto the content of a multimedia file in step 502. In one embodiment, thecontent information includes a transcript of words and/or themes of thecontent (e.g., audio, video) of a multimedia file. In anotherembodiment, the content information includes reviews or opinions of themultimedia file. For example, a multimedia file may receive reviews,comments, or tags relating to the content of the multimedia file at anInternet site that hosts the multimedia file.

The process 500 includes receiving storage information about themultimedia file in step 504. The storage information may be related to astorage with any level of permanence, such as, for example, a permanentstorage or a temporary storage (e.g., random access memory). In oneembodiment, the storage information received in step 504 includesinformation that the storage is associated with a multimedia player orotherwise adapted or capable of being accessed by the multimedia player.In another embodiment, the storage information received in step 504includes information that the multimedia player has accessed the storage(e.g., for the purpose of playing or preparing to play the multimediafile). In one embodiment, the storage information received may consistof information that the multimedia file is ready to be played by amultimedia player and/or information that the multimedia file is beingprepared to be played.

In one embodiment, the storage information may be received in step 504from an apparatus containing the storage. In another embodiment, thestorage information may be received in step 504 from another apparatusapart from the apparatus containing the storage.

The process 500 includes transmitting a linked animation to themultimedia player in step 506. As further described herein, in oneembodiment, the linked animation may be an MLA and may includeinstructions for linking the MLA to a multimedia file. In anotherembodiment, also further described herein, the linked animation may betransmitted separately from instructions for the multimedia player forlinking the animation to a multimedia file. For example, a plurality ofmultimedia files may reside on storage connected to a machine with amultimedia player while an animation may operate on a separate machinewith storage, and a third machine may instruct the multimedia player tolink the animation to one or more of the plurality of multimedia files,as described further herein.

The process 500 includes transmitting a linking instruction in step 508for playing the linked animation over a concurrent playing of themultimedia file. As described further herein, the linking instructionmay include one or more placement points and one or more time codescorresponding to an animation, for example to display the start of theanimation's sequence of images over a particular placement point and ata particular time code. Also as described further herein, the linkinginstruction may include instructions for the playback of the animation,such as playing certain portions in sequence, pausing playback for ahighlighted image to be displayed, and playing certain portions or thewhole animation only if certain events occur (e.g., selection by acursor, passage of pre-determined time).

In one embodiment, the linking instruction is transmitted in step 508 toa multimedia player while it is preparing to present a multimedia file.In another embodiment, the linking instruction is transmitted in step508 at an earlier time, for example when a bid or payment is made for anadvertisement placement. In one embodiment, the linking instruction istransmitted before a multimedia file is selected and/or stored in astorage adapted to be used by a multimedia player (e.g., random accessmemory).

FIG. 6 illustrates an embodiment of a method 600 of presenting anadvertisement selection interface. The process 600 includes receiving atrigger in step 602. A trigger may be any portion of a multimedia file,explicitly or implicitly or related to the multimedia file. For example,a trigger may be a word, an image, a color, an embedded file (e.g., anaudio file), a scheduled event and/or any combination thereof. In oneembodiment, in step 602, a trigger in the form of a word is receivedthat is a focused theme of an advertisement campaign or a word thatdescribes and/or matches a content item of a multimedia file (e.g., atranscript word). In one embodiment, the trigger received in step 602 isa word meeting a threshold of relevance to a public relations oradvertisement campaign. In another embodiment, the trigger received instep 602 is a descriptive or generic term for a service or product beingadvertised by the animation. In another embodiment, the trigger receivedin step 602 is a trademark (e.g., an image, a word). In anotherembodiment, the trigger received in step 602 is a description of a sceneor the description of an event (e.g., dramatic event, title of an event)occurring in the multimedia file.

The trigger received in step 602 may represent a common content item ofa plurality of multimedia files. For example, as described furtherherein, a content item (e.g., a word, a scene description) may becommonly shared between multiple multimedia files and may be presentedby an advertisement selection interface. In one embodiment, a triggermay be received in step 602 from a selection of a portion of a playbackof a multimedia file where and/or when the content item is presented. Inanother embodiment, a trigger received in step 602 may be a plurality ofcommon content items. For example, a plurality of groups of multimediafiles (which may or may not share some multimedia files in multiplegroups) may be associated with a plurality of common content items. Theplurality of common content items may be presented, such as by anadvertisement selection interface, and a common content item may beselected, for example, in the creation and/or evaluation of multipleexemplary advertisement strategies, as described further herein.

In one embodiment, based on the received trigger in step 602, or throughanother process or procedure, a word is selected, such as, for the focusof an advertisement campaign. The word selected may relate to a contentitem portrayed in a multimedia file, as described further herein,including a spoken word from an audio track, a theme, a scene element,or a dramatic event. In one embodiment, the word and/or related contentitem is contained in multiple multimedia files and is a common contentitem of the multiple multimedia files. For example, a café countertopmay be a common content item because it is a content item that appearsin multiple multimedia files. In another embodiment, closely analogousor synonymous content items may be considered similar enough (e.g.,through a measurement of similarity) that any content item in the groupof similar content items may be considered a common content item acrossmultiple multimedia files. For example, a café countertop and arestaurant table may be considered common content items based on ameasurement of similarity.

The process 600 includes presenting an advertisement selection interfacein step 604. The advertisement selection interface may be presented to auser, for example to an advertising account manager. In one embodiment,the advertisement selection interface includes a visualizationcomponent, visualization features, graphical user interfaces, and/orother user interfaces that allow an advertising account manager tovisualize an exemplary placement or distribution of advertisementsacross aspects of many multimedia files. For example, an advertisementselection interface may present an exemplary selection of multimediafiles and placements based on a trigger received in step 602 and/orother criteria, such as a selected advertising budget or cost forplacing and linking an animation with one or more multimedia file(s). Avisualization component of the advertisement selection interface mayallow an advertising account manager to review the overall placement(e.g., suggested placement points and time codes) of animations to belinked with many multimedia files based on a combination of selectioncriteria such as, for example, advertisement budget or cost, type ofmultimedia files, word matched to a common content item of themultimedia files and/or degree of similarity of the word and the commoncontent item.

By manipulating the criteria and viewing the advertisement selectioninterface, an advertising account manager may preview the differentstrategies and parameters for placing and/or linking advertisements withthose multimedia files under multiple scenarios. For example, anadvertising account manager may select a strategy for placingadvertisement animations based on a proposed cost (e.g., budget) for theplaced advertisements and then review, using the visualizationcomponent, how those strategies result in linking advertisementanimations with many multimedia files. The placements reviewed mayinclude each of the different linking parameters that are describedfurther herein. The advertising account manager may then revise thestrategies for placement and/or the advertising budget to view anotherproposed placement of advertisements across the multimedia files.

In one embodiment, the advertisement selection interface presented instep 604 includes a multimedia content navigation component. Forexample, the multimedia content navigation component includes selectiontools that allow an operator of the selection interface to prepareplacement targets into the content of a multimedia file at certainplacement points and time codes within the multimedia file. As anotherexample, the content navigation component may include amulti-dimensional placement component (e.g., two-dimensional,three-dimensional) that is adapted to designate placement points andtime codes within a multimedia file. In one embodiment, the contentnavigation component is adapted to receive placement points and timecodes that would serve as potential advertisement placement sites withinthe multimedia file without a specified animation or without a specifiedplacement point or time code in an animation. In another embodiment, thecontent navigation component is adapted to receive a placement point andtime code for a specified animation within one or more specifiedmultimedia files. For example, these placement points and time codes mayinclude locations and time codes where a product may be placed withinthe multimedia file in order to capitalize on some relationship betweenthe product and the content of the multimedia file occurring at thespecified placement point and time code of the multimedia file. In oneembodiment, the content navigation component is adapted to present aportion of the multimedia content, separately or combined with others,such as an audio track, a video screen, and/or ancillary data for themultimedia content, such as a closed captioning screen or a texttranscription file.

In one embodiment, the advertisement selection interface presented instep 604 includes a content relevance designation component that allowsan operator, a processor, or other machine to associate certainrelevance factors and/or attributes with a placement point and/or timecode within the multimedia file. The relevance designation component mayinclude relevance parameters, for example, that associate words andaudio tracks of the multimedia content with synonyms of those wordsand/or potential advertised products associated with those words andaudio tracks. The relevance designation component may include relevanceparameters related to semantic analysis, syntactic analysis, and/ornatural language processing. As another example, other ancillary datamay be used to create similar associations. For example, breaks indialogue and/or other audio cues may be associated with certainadvertising parameters and/or products, and may be so designated in therelevance designation component.

In one embodiment, the relevance associated with particular placementpoints and time codes in the multimedia content may include subjectivefactors, such as tones or feelings expressed in the content of themultimedia file. Both subjective relevance determinations may be usedalongside, or in any relationship with, objective relevance indications(e.g., words used in an audio track).

In one embodiment, the relevance designated to each placement pointand/or time code of the multimedia content may be used to match anadvertisement to some points within a piece of multimedia content andnot others. For example, the relevance designated to particularplacement points and time codes may affect the way in which a particularadvertisement placement strategy will result in advertisementplacements, such as the price of the placements and the placement pointsand time codes within the multimedia files. In one embodiment,particular instructions (e.g., with respect to triggering events ofresidual images, delays) may be priced differently with respect torelevance factors or other factors.

In one embodiment, the advertisement selection interface presented instep 604 may use the visualization component to present multiplescenarios of advertisement placement to an advertising account manager,including various placements of advertisements to different placementpoints and time codes among many multimedia files. These placementpoints may be weighted by relevance factors of the points to theadvertisements to be placed, as well as various pricing requirements forthe placements. The visualization component may also include aninterface that allows an advertising account manager to designateparticular relevance characteristics that are important for theplacement of a particular advertisement in order to tailor thevisualization component to provide advertisement placement scenarios tothe advertisement manager to match the goal of the advertisementcampaign.

The process 600 includes presenting a multimedia file in step 606, asdescribed further herein. In one embodiment, the multimedia file ispresented in step 606 by the advertisement selection interface presentedin step 604. In another embodiment, the multimedia file is presented instep 606 by another program. For example, the multimedia file may bepresented by a computing machine or program and the playback may beselected by and/or connected with the advertisement selection interface.

The process 600 includes presenting a placement point and a time code instep 608. As described further herein, in one embodiment, anadvertisement selection interface presents a placement point and a timecode in step 608. In another embodiment, a multimedia file is presentedalong with a placement point and a time code in step 608 as a suggestionfor linking an animation to the multimedia file. For example, aplacement point and a time code may be presented as associated with anindication of a particular content item, such as a content item thatmakes the specified placement point and time code relevant for placingthe animation and linking it to the placement point and time code. Asdescribed further herein, a placement point and a time code may beselected based on a variety of criteria and presenting the placementpoint and time code in step 608 may be adapted to facilitate thatselection.

As described further herein, in one embodiment, a placement point and atime code are presented in step 608 by another process, such as amultimedia player or a browser. For example, a multimedia player maypresent a playback of a multimedia file which may include thepresentation of the placement point and the time code in step 608. Asdescribed further herein, processes may be connected to or incommunication with an advertisement selection interface and/or a programoperating the process 600. For example, receiving a selection (e.g.,step 610) may be performed through receiving the selection from aprocess connected to or in communication with a program operating theprocess 600.

The process 600 includes receiving a selection of a placement point anda time code in step 610. Receiving the selection in step 610 may beperformed through many different means, such as selection by a cursor,as described further herein. In one embodiment, receiving a selection ofa placement point and a time code in step 610 includes receiving aselection from a user interface, such as, for example, through selectinga portion of a playback of a multimedia file. In another embodiment,receiving a selection of a placement point and a time code in step 610includes receiving a selection of an advertisement strategy or aselection of a presented placement of animations overlying multimediafile(s), wherein the selected strategy or placement includes theplacement point and the time code.

The process 600 includes preparing a linking instruction for amultimedia player in step 612. Preparing a linking instruction in step612 may include any of the several embodiments of linking instructionsand/or the considerations for linking an animation and a multimedia filethat are described further herein.

In one embodiment, the linking instruction prepared in step 612 relatesto a single multimedia file. For example, the linking instruction couldspecify a particular placement point and time code in a multimedia filethat is specifically selected, as described further herein, to aparticular relevant feature of the multimedia file with the animation.In another embodiment, the linking instruction prepared in step 612relates to a plurality of multimedia files. For example, as describedfurther herein, the linking instruction prepared in step 612 specifies abroad class or type of placement point and time code that may beselected or interpreted in the plurality of multimedia without aspecific animation identified for placement in or linking withmultimedia files. As another example, as described further herein, acommon content item shared among the plurality of multimedia files istargeted by the linking instruction and the linking instruction includesa placement point and a time code for each multimedia file thatcorresponds to the occurrence of the common content item in eachmultimedia file.

As described further herein, the process 600 includes, in oneembodiment, presenting a cost associated with a scenario, such as, forexample, a placement strategy and/or a particular placement with aspecified multimedia file. In one embodiment, a cost may be related to arevenue sharing model, pay-per-click model, or other event-driven model.In one embodiment, a second cost may be received, for example,reflecting a response to the first cost from an advertising accountmanager operating an advertisement selection interface. In oneembodiment, the process 600 will prepare a second set of linkinginstructions reflecting the second cost. In another embodiment, theprocess 600 will determine a second multimedia file or group ofmultimedia files reflecting the second cost. In another embodiment, theprocess 600 will prepare a second linking instruction and determine asecond multimedia file. The process 600 may prepare a second scenariofor placement of animations (e.g., a placement strategy) in response toreceiving a second cost based on the determinations and/orconsiderations for placing/linking animations, as described furtherherein.

FIG. 7 is a schematic representation of an embodiment of a system 700for linking animations and multimedia files. System 700 includes amachine 702 (e.g., computer) that is connected to a network 704 and thatincludes a processor 706, a display 708, a storage 710, and an interfacemodule 712. Machine 702 may also include, for example, another storagein addition to storage 710, such as a memory (e.g., volatile,nonvolatile), a power supply unit, a real-time clock, a hard disk drive,and/or a network interface card (NIC). Interface module 712 may includeor be adapted to work with display 708, and may further include aninput/output unit, a keyboard, and/or a pointing device (e.g., forcontrolling a cursor). Machine 702 may connect to network 704, which maybe the Internet or a local network, and the local network may or may nothave connections to the Internet. The network 704 may also be a wirednetwork, power-line network, radio, wireless, 802.11 network, infrarednetwork, ultrasound network, etc. Many other devices and modificationsthat are well known may be used instead of, or in addition to, thecomponents shown of system 700, without departing from the broaderspirit and scope of the description herein.

The system 700 includes a content storage 714 connected to the network704. In one embodiment, the content storage 714 is a public orsemi-public online repository of animations and/or multimedia files. Forexample, a content storage 714 may be an online video service such asYouTube, Flikr, Hulu, or The Internet Archive (hosted presently at<archive.org>). In another embodiment, the content storage 714 is aprivate or proprietary storage of animations and/or multimedia files.For example, a private storage may store animations for a particularadvertisement campaign. As another example, a proprietary storage maystore multimedia files that appeal to a particular audience and/oradapted for linking animations, as described further herein.

In one embodiment, the content storage 714 is used by the machine 702via connecting through the network 704 in performance of the methodsdescribed further herein. In one embodiment, additional machines 716 aand 716 b perform some of the processes and/or run some of the programsdescribed herein, such as, for example, multimedia player(s). Forexample, determinations about content in a multimedia player (e.g.,transcription of audio tracks, determination of placement points andtime codes) may be executed on or by a machine 716 a connected to thenetwork 704. In another embodiment, additional machines 716 a and 716 bmay be used to access an advertisement selection interface.

In one embodiment, the multimedia player is hosted at an Internet siteremote from machine 702. For example, the multimedia player may connectover a network 704 to a content storage 714 (e.g., multimedia filestorage location), and processes described further herein may transmitinstructions (e.g., placement instructions, linking instructions) overthe network (e.g., Internet) for the multimedia player to play ananimation overlying a concurrent playing of the multimedia file. Inanother embodiment, a multimedia player and a program operating aprocess described herein (e.g., for linking an animation and amultimedia file played by the multimedia player) resides on the samecomputing machine, such as machine 702.

Descriptions of methods herein may be implemented in software, firmware,hardware and/or in any combination thereof. For example, methods may beimplemented in hardware, such as computers (e.g., general purposemachines, embedded computing machines). Descriptions of apparatus orsystems herein may be implemented in software, firmware, hardware and/orin any combination thereof. For example, systems may be implemented asvirtual machines in software. Communication connections describedfurther herein may be implemented in any form of communicationstechnology or combination thereof, such as, for example, hardware bus,Internet Protocol (IP) connections, and/or proprietary connections.

It is clear that many modifications and variations of this embodimentcan be made by one skilled in the art without departing from the spiritof the novel art of this disclosure. For example, the systems and methodherein disclosed can be applied to many different multimedia systems.Also, while specific reference to advertisements may have beendisclosed, other animations and multimedia files may also be used. Thesemodifications and variations do not depart from the broader spirit andscope of the present disclosure, and the examples cited here areillustrative rather than limiting.

What is claimed:
 1. A method comprising: communicating, by a processor,a first multimedia file to a client device for display, wherein theclient device is configured to play back the first multimedia file to auser of the client device; identifying automatically, by the processor,a trigger in the first multimedia file, the trigger being determinedbased on a content item identified by monitoring playback of the firstmultimedia file, and the trigger corresponding to a playback of ananimation, wherein the monitoring playback comprises: recognizing anaudio portion based on a transcription of the multimedia file inreal-time, and identifying a first time within the multimedia file wherethe audio portion occurs; preparing, by the processor, a linkinginstruction identifying the animation, an initial time codecorresponding to the trigger, and an action that is corresponding with aspecified triggering event, wherein: the action is performable by theclient device at a second time code, the action includes receiving animage, and the initial time code is determined based at least in part onthe first time associated with where in the multimedia file the audioportion occurs; instructing, by the processor and using the linkinginstruction, a multimedia player to overlay the animation in a sceneidentified by the content item and perform the action upon detecting thesecond time code; and presenting a residual image, by the multimediaplayer, wherein the residual image is displayed outside of the play backof the first multimedia file and the animation comprises transitioningan image from being overlaid on the scene to being the residual image.2. The method of claim 1, wherein the content item is identified basedon a word that is a theme of an advertisement campaign.
 3. The method ofclaim 1, wherein the content item is identified in real-time or nearreal-time during the playback of the first multimedia file.
 4. Themethod of claim 1, further comprising; communicating an advertisementselection interface to the client device, wherein the advertisementselection interface comprises a content relevance designation componentthat enables association of certain relevance factors and attributeswith the time code.
 5. The method of claim 4, wherein the contentrelevance designation component includes relevance parameters thatassociate words and audio tracks of multimedia content with synonyms ofthose words.
 6. The method of claim 4, wherein the content relevancedesignation component includes relevance parameters that associate wordsand audio tracks of multimedia content with potential advertisedproducts associated with those words and audio tracks.
 7. The method ofclaim 4, wherein the content relevance designation component includesrelevance parameters related to semantic analysis.
 8. The method ofclaim 4, wherein the content relevance designation component includesrelevance parameters comprising subjective factors.
 9. The method ofclaim 4, wherein the relevance factors are used to match anadvertisement to some points within a piece of multimedia content. 10.The method of claim 1, wherein the residual image is displayed after thecontent item is no longer displayed in the play back of the firstmultimedia file.
 11. A computing device comprising: a processor; and astorage medium for tangibly storing thereon program logic for executionby the processor, the stored program logic comprising: first multimediafile communicating logic executed by the processor for communicating afirst multimedia file to a client device for display, wherein the clientdevice is configured to play back the first multimedia file to a user ofthe client device; identifying logic executed by the processor foridentifying automatically a trigger in the first multimedia file, thetrigger being determined based on a content item identified bymonitoring playback of the first multimedia file, and the triggercorresponding to a playback of an animation, wherein the monitoringplayback comprises: recognizing an audio portion based on atranscription of the multimedia file in real-time, and identifying afirst time within the multimedia file where the audio portion occurs;linking instruction preparing logic executed by the processor forpreparing a linking instruction identifying the animation, an initialtime code corresponding to the trigger, and an action that iscorresponding with a specified triggering event, wherein: the action isperformable by the client device at a second time code, the actionincludes receiving a selection of a residual image, and the initial timecode is determined based at least in part on the first time associatedwith where in the multimedia file the audio portion occurs; linkinginstruction instructing logic executed by the processor for instructinga multimedia player to use the linking instruction to overlay theanimation in a scene identified by the content item and perform theaction upon detecting the second time code; and presenting a residualimage, by the multimedia player, wherein the residual image is displayedoutside of the play back of the first multimedia file and the animationcomprises transitioning an image from being overlaid on the scene tobeing the residual image.
 12. The computing device of claim 11, whereinthe content item is identified based on a word that is a theme of anadvertisement campaign.
 13. The computing device of claim 11, whereinthe content item is identified in real-time or near real-time during theplayback of the first multimedia file.
 14. The computing device of claim11, wherein the stored program logic further comprises advertisementselection interface communicating logic executed by the processor forcommunicating an advertisement selection interface to the client device,wherein the advertisement selection interface comprises a contentrelevance designation component that enables association of certainrelevance factors and attributes with the time code.
 15. The computingdevice of claim 14, wherein the content relevance designation componentincludes relevance parameters that associate words and audio tracks ofmultimedia content with synonyms of those words.
 16. The computingdevice of claim 14, wherein the content relevance designation componentincludes relevance parameters that associate words and audio tracks ofmultimedia content with potential advertised products associated withthose words and audio tracks.
 17. The computing device of claim 14,wherein the content relevance designation component includes relevanceparameters related to semantic analysis.
 18. The computing device ofclaim 14, wherein the content relevance designation component includesrelevance parameters comprising subjective factors.
 19. The computingdevice of claim 14, wherein the relevance factors are used to match anadvertisement to some points within a piece of multimedia content.
 20. Anon-transitory computer-readable storage medium with a first executableprogram stored thereon, wherein the first executable program containsinstructions for a processor to perform the following: communicating, bythe processor, a first multimedia file to a client device for display,wherein the client device is configured to play back the firstmultimedia file to a user of the client device; identifyingautomatically, by the processor, a trigger in the first multimedia file,the trigger being determined based on a content item identified bymonitoring playback of the first multimedia file, and the triggercorresponding to a playback of an animation, wherein the monitoringplayback comprises: recognizing an audio portion based on atranscription of the multimedia file in real-time, and identifying afirst time within the multimedia file where the audio portion occurs;preparing, by the processor, a linking instruction identifying theanimation, an initial time code corresponding to the trigger, and anaction that is corresponding with a specified triggering event, wherein:the action is performable by the client device at a second time code,the action includes receiving a selection of a residual image, and theinitial time code is determined based at least in part on the first timeassociated with where in the multimedia file the audio portion occurs;instructing, by the processor and using the linking instruction, amultimedia player that is playing back the first multimedia file tooverlay the animation in a scene identified by the content item andperform the action upon detecting the second time code; and presenting aresidual image, by the multimedia player, wherein the residual image isdisplayed outside of the play back of the first multimedia file and theanimation comprises transitioning an image from being overlaid on thescene to being the residual image.